fingerprint5 2.2.0
Loading...
Searching...
No Matches
fingerprint5.h File Reference

This file contains API for Fingerprint 5 Click Driver. More...

#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_uart.h"
#include "drv_spi_master.h"
#include "spi_specifics.h"

Go to the source code of this file.

Data Structures

struct  fingerprint5_cmd_t
 Fingerprint 5 Click command header object. More...
struct  fingerprint5_status_t
 Fingerprint 5 Click status object. More...
struct  fingerprint5_version_t
 Fingerprint 5 Click version object. More...
struct  fingerprint5_list_templates_t
 Fingerprint 5 Click list templates object. More...
struct  fingerprint5_enroll_t
 Fingerprint 5 Click enroll status object. More...
struct  fingerprint5_identify_t
 Fingerprint 5 Click identify status object. More...
struct  fingerprint5_sys_config_t
 Fingerprint 5 Click system config object. More...
struct  fingerprint5_t
 Fingerprint 5 Click context object. More...
struct  fingerprint5_cfg_t
 Fingerprint 5 Click configuration object. More...

Macros

#define FINGERPRINT5_CMD_STATUS   0x0040
 Fingerprint 5 command IDs list.
#define FINGERPRINT5_CMD_VERSION   0x0041
#define FINGERPRINT5_CMD_BIST   0x0044
#define FINGERPRINT5_CMD_CAPTURE   0x0050
#define FINGERPRINT5_CMD_ABORT   0x0052
#define FINGERPRINT5_CMD_IMAGE_DATA   0x0053
#define FINGERPRINT5_CMD_ENROLL   0x0054
#define FINGERPRINT5_CMD_IDENTIFY   0x0055
#define FINGERPRINT5_CMD_LIST_TEMPLATES   0x0060
#define FINGERPRINT5_CMD_DELETE_TEMPLATE   0x0061
#define FINGERPRINT5_CMD_GET_SYSTEM_CONFIG   0x006A
#define FINGERPRINT5_CMD_SET_SYSTEM_CONFIG   0x006B
#define FINGERPRINT5_CMD_RESET   0x0072
#define FINGERPRINT5_CMD_SET_DBG_LOG_LEVEL   0x00B0
#define FINGERPRINT5_CMD_DATA_GET   0x0101
#define FINGERPRINT5_CMD_NAVIGATION   0x0200
#define FINGERPRINT5_CMD_GPIO_CONTROL   0x0300
#define FINGERPRINT5_FRAME_PROTOCOL_VERSION   0x0004
 Fingerprint 5 frame settings.
#define FINGERPRINT5_FRAME_TYPE_REQUEST   0x11
#define FINGERPRINT5_FRAME_TYPE_RESPONSE   0x12
#define FINGERPRINT5_FRAME_TYPE_EVENT   0x13
#define FINGERPRINT5_FRAME_FLAG_HOST   0x0010
#define FINGERPRINT5_FRAME_FLAG_FW_BL   0x0020
#define FINGERPRINT5_FRAME_FLAG_FW_APP   0x0040
#define FINGERPRINT5_FRAME_CMD_MAX_DATA_SIZE   244
#define FINGERPRINT5_FRAME_MAX_SIZE   256
#define FINGERPRINT5_MAX_VERSION_SIZE   100
 Fingerprint 5 buffers settings.
#define FINGERPRINT5_MAX_NUM_TEMPLATES   12
#define FINGERPRINT5_EVENT_NONE   0
 Fingerprint 5 event settings.
#define FINGERPRINT5_EVENT_IDLE   1
#define FINGERPRINT5_EVENT_ARMED   2
#define FINGERPRINT5_EVENT_FINGER_DETECT   3
#define FINGERPRINT5_EVENT_FINGER_LOST   4
#define FINGERPRINT5_EVENT_IMAGE_READY   5
#define FINGERPRINT5_EVENT_CMD_FAILED   6
#define FINGERPRINT5_STATE_APP_FW_READY   0x0001
 Fingerprint 5 stete settings.
#define FINGERPRINT5_STATE_CAPTURE   0x0004
#define FINGERPRINT5_STATE_IMAGE_AVAILABLE   0x0010
#define FINGERPRINT5_STATE_DATA_TRANSFER   0x0040
#define FINGERPRINT5_STATE_FINGER_DOWN   0x0080
#define FINGERPRINT5_STATE_SYS_ERROR   0x0400
#define FINGERPRINT5_STATE_ENROLL   0x1000
#define FINGERPRINT5_STATE_IDENTIFY   0x2000
#define FINGERPRINT5_STATE_NAVIGATION   0x4000
#define FINGERPRINT5_TEMPLATE_ID_TYPE_NONE   0x1012
 Fingerprint 5 template ID type settings.
#define FINGERPRINT5_TEMPLATE_ID_TYPE_ALL   0x2023
#define FINGERPRINT5_TEMPLATE_ID_TYPE_SPECIFIED   0x3034
#define FINGERPRINT5_TEMPLATE_ID_TYPE_NEW   0x4045
#define FINGERPRINT5_ENROLL_FEEDBACK_DONE   1
 Fingerprint 5 enroll feedback settings.
#define FINGERPRINT5_ENROLL_FEEDBACK_PROGRESS   2
#define FINGERPRINT5_ENROLL_FEEDBACK_REJECT_LOW_QUALITY   3
#define FINGERPRINT5_ENROLL_FEEDBACK_REJECT_LOW_COVERAGE   4
#define FINGERPRINT5_ENROLL_FEEDBACK_REJECT_LOW_MOBILITY   5
#define FINGERPRINT5_ENROLL_FEEDBACK_REJECT_OTHER   6
#define FINGERPRINT5_ENROLL_FEEDBACK_PROGRESS_IMMOBILE   7
#define FINGERPRINT5_IDENTIFY_RESULT_MATCH   0x61EC
 Fingerprint 5 identify match settings.
#define FINGERPRINT5_IDENTIFY_RESULT_NO_MATCH   0xBAAD
#define FINGERPRINT5_NAV_ORIENTATION_0   0
 Fingerprint 5 navigation orientation settings.
#define FINGERPRINT5_NAV_ORIENTATION_90   1
#define FINGERPRINT5_NAV_ORIENTATION_180   2
#define FINGERPRINT5_NAV_ORIENTATION_270   3
#define FINGERPRINT5_GPIO_SUB_CMD_GET   0
 Fingerprint 5 GPIO control settings.
#define FINGERPRINT5_GPIO_SUB_CMD_SET   1
#define FINGERPRINT5_GPIO_MODE_NOT_USED   0
#define FINGERPRINT5_GPIO_MODE_OUTPUT_PP   1
#define FINGERPRINT5_GPIO_MODE_OUTPUT_OD   2
#define FINGERPRINT5_GPIO_MODE_INPUT_PULL_NONE   3
#define FINGERPRINT5_GPIO_MODE_INPUT_PULL_UP   4
#define FINGERPRINT5_GPIO_MODE_INPUT_PULL_DOWN   5
#define FINGERPRINT5_GPIO_STATE_RESET   0
#define FINGERPRINT5_GPIO_STATE_SET   1
#define FINGERPRINT5_SYS_CFG_VERSION   1
 Fingerprint 5 system config settings.
#define FINGERPRINT5_SYS_CFG_FLAG_STATUS_EVT_BOOT   0x00000001
#define FINGERPRINT5_SYS_CFG_FLAG_UART_IN_STOP_MODE   0x00000010
#define FINGERPRINT5_SYS_CFG_FLAG_UART_IRQ_TX   0x00000020
#define FINGERPRINT5_SYS_CFG_UART_BAUDRATE_9600   1
#define FINGERPRINT5_SYS_CFG_UART_BAUDRATE_19200   2
#define FINGERPRINT5_SYS_CFG_UART_BAUDRATE_57600   3
#define FINGERPRINT5_SYS_CFG_UART_BAUDRATE_115200   4
#define FINGERPRINT5_SYS_CFG_UART_BAUDRATE_921600   5
#define FINGERPRINT5_SYS_CFG_TYPE_DEFAULT   0
#define FINGERPRINT5_SYS_CFG_TYPE_CUSTOM   1
#define FINGERPRINT5_RX_TIMEOUT_MS   3000
 Fingerprint 5 timeout setting.
#define FINGERPRINT5_TX_DRV_BUFFER_SIZE   256
 Fingerprint 5 driver buffer size.
#define FINGERPRINT5_RX_DRV_BUFFER_SIZE   256
#define FINGERPRINT5_SET_DATA_SAMPLE_EDGE   SET_SPI_DATA_SAMPLE_EDGE
 Data sample selection.
#define FINGERPRINT5_SET_DATA_SAMPLE_MIDDLE   SET_SPI_DATA_SAMPLE_MIDDLE
#define FINGERPRINT5_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.

Enumerations

enum  fingerprint5_drv_t { FINGERPRINT5_DRV_SEL_UART , FINGERPRINT5_DRV_SEL_SPI }
 Fingerprint 5 Click driver selector. More...
enum  fingerprint5_return_value_t { FINGERPRINT5_OK = 0 , FINGERPRINT5_ERROR = -1 , FINGERPRINT5_ERROR_TIMEOUT = -2 }
 Fingerprint 5 Click return value data. More...

Functions

void fingerprint5_cfg_setup (fingerprint5_cfg_t *cfg)
 Fingerprint 5 configuration object setup function.
err_t fingerprint5_init (fingerprint5_t *ctx, fingerprint5_cfg_t *cfg)
 Fingerprint 5 initialization function.
void fingerprint5_drv_interface_sel (fingerprint5_cfg_t *cfg, fingerprint5_drv_t drv_sel)
 Fingerprint 5 driver interface setup function.
err_t fingerprint5_generic_write (fingerprint5_t *ctx, uint8_t *data_in, uint16_t len)
 Fingerprint 5 write data function.
err_t fingerprint5_generic_read (fingerprint5_t *ctx, uint8_t *data_out, uint16_t len)
 Fingerprint 5 read data function.
void fingerprint5_set_rst_pin (fingerprint5_t *ctx, uint8_t state)
 Fingerprint 5 set RST pin function.
void fingerprint5_reset_device (fingerprint5_t *ctx)
 Fingerprint 5 hardware reset function.
uint8_t fingerprint5_get_irq_pin (fingerprint5_t *ctx)
 Fingerprint 5 get IRQ pin function.
err_t fingerprint5_send_cmd (fingerprint5_t *ctx)
 Fingerprint 5 send command function.
err_t fingerprint5_read_cmd (fingerprint5_t *ctx)
 Fingerprint 5 read command function.
err_t fingerprint5_get_status (fingerprint5_t *ctx)
 Fingerprint 5 get status function.
err_t fingerprint5_get_version (fingerprint5_t *ctx)
 Fingerprint 5 get version function.
err_t fingerprint5_enroll_finger (fingerprint5_t *ctx)
 Fingerprint 5 enroll finger function.
err_t fingerprint5_identify_finger (fingerprint5_t *ctx)
 Fingerprint 5 identify finger function.
err_t fingerprint5_request_abort (fingerprint5_t *ctx)
 Fingerprint 5 request abort function.
err_t fingerprint5_list_templates (fingerprint5_t *ctx)
 Fingerprint 5 list templates function.
err_t fingerprint5_delete_templates (fingerprint5_t *ctx)
 Fingerprint 5 delete templates function.
err_t fingerprint5_request_reset (fingerprint5_t *ctx)
 Fingerprint 5 request reset function.
err_t fingerprint5_start_navigation (fingerprint5_t *ctx, uint8_t orientation)
 Fingerprint 5 start navigation function.
err_t fingerprint5_run_bist (fingerprint5_t *ctx)
 Fingerprint 5 run BIST function.
err_t fingerprint5_set_gpio (fingerprint5_t *ctx, uint8_t pin, uint8_t mode, uint8_t state)
 Fingerprint 5 set GPIO function.
err_t fingerprint5_get_gpio (fingerprint5_t *ctx, uint8_t pin)
 Fingerprint 5 get GPIO function.
err_t fingerprint5_set_config (fingerprint5_t *ctx, fingerprint5_sys_config_t *config)
 Fingerprint 5 set system config function.
err_t fingerprint5_get_config (fingerprint5_t *ctx, uint8_t type)
 Fingerprint 5 get system config function.

Detailed Description

This file contains API for Fingerprint 5 Click Driver.

Enumeration Type Documentation

◆ fingerprint5_drv_t

Fingerprint 5 Click driver selector.

Selects target driver interface of Fingerprint 5 Click driver.

Enumerator
FINGERPRINT5_DRV_SEL_UART 

UART driver descriptor.

FINGERPRINT5_DRV_SEL_SPI 

SPI driver descriptor.

◆ fingerprint5_return_value_t

Fingerprint 5 Click return value data.

Predefined enum values for driver return values.

Enumerator
FINGERPRINT5_OK 
FINGERPRINT5_ERROR 
FINGERPRINT5_ERROR_TIMEOUT